package DnD;

import partes.Stats;
import DnD.DnD_Enums.DnD_StatName;

public class DnD_Stats implements Stats<DnD_StatName>{			
	protected int[][] v;
	
	public DnD_Stats(int fue, int des, int res, int intel, int sab, int car){
		v=new int[6][2];
		v[0][0]=fue; v[1][0]=des; v[2][0]=res; v[3][0]=intel; v[4][0]=sab; v[5][0]=car;
		v[0][1]=0; v[1][1]=0; v[2][1]=0; v[3][1]=0; v[4][1]=0; v[5][1]=0;
		
	}

	public static int getModificador(int I) {
		if (I<10)
			return (I-11)/2;
		else return (I-10)/2;
	}

	public int getModificador(DnD_StatName S) {
		return getModificador(v[S.ordinal()][0]+v[S.ordinal()][1]);
	}

	public DnD_StatName[] getStatsName() {
		return DnD_StatName.values();
			
	}

	public int getValor(DnD_StatName S) {
		return v[S.ordinal()][0];
	}
	
	public int getBonus(DnD_StatName S) {
		return v[S.ordinal()][1];
	}

	public void setValor(DnD_StatName S, int I) {
		v[S.ordinal()][0]=I;		
	}
	
	public void setBonus(DnD_StatName S, int I) {
		v[S.ordinal()][1]=I;		
	}
}